iT邦幫忙

2024 iThome 鐵人賽

DAY 5
0
Python

pythonGUI學習筆記系列 第 5

Day 5: PySide6 菜單(Menu)和工具欄(Toolbar)

  • 分享至 

  • xImage
  •  

目標

  • 創建應用程式的菜單欄(QMenuBar)和工具欄(QToolbar)
  • 使用 QAction 來控制應用程式的功能

1. 創建菜單欄 (QMenuBar)

  • QMenuBar: 應用程式的頂部菜單欄。你可以在這裡添加多個菜單(如 文件、編輯等),每個菜單內可以包含多個功能選項。
class MainWindow(QMainWindow):
    def __init__(self):
        super().__init__()
        self.setWindowTitle("菜單與工具欄範例")

        # 創建菜單欄
        menubar = self.menuBar()
        file_menu = menubar.addMenu("文件")

        # 創建動作
        Open = QAction("開啟", self)
        Save = QAction("保存", self)
        Exit = QAction("退出", self)

        # 將動作添加到菜單
        file_menu.addAction(Open)
        file_menu.addAction(Save)
        file_menu.addAction(Exit)
  • QAction : QAction 是一個非常重要的類,負責管理應用程式中的動作,無論是在菜單中還是工具欄中。

菜單欄圖片

2. 創建工具欄 (QToolBar)

  • QToolBar : 是放置在窗口中的一個可拖動的工具欄,你可以在這裡添加按鈕來快速執行動作。
class MainWindow(QMainWindow):
    def __init__(self):
        super().__init__()
        self.setWindowTitle("菜單與工具欄範例")

        # 創建工具欄
        toolbar = QToolBar("主要工具欄", self)
        self.addToolBar(toolbar)

        # 創建動作
        Open = QAction("開啟", self)
        Save = QAction("保存", self)
        Exit = QAction("退出", self)

        # 將動作添加到工具欄
        toolbar.addAction(Open)
        toolbar.addAction(Save)
        toolbar.addAction(Exit)

工具欄圖片

3. 使用 QAction 來控制應用程式的功能

  • triggered.connect() : 是 QAction 其中一個信號,當該動作被觸發時會發送信號。
#發出信號
Exit.triggered.connect(self.close) #點擊後會退出
  • QAction 也可以通過 setShortcut() 方法設置快捷鍵。
#設定快捷鍵
Exit.setShortcut("Ctrl+E") #使用快捷鍵後退出

總結

  • 菜單欄 (QMenuBar):應用程式頂部的選單。
  • 工具欄 (QToolBar):放置按鈕的欄位,讓使用者快速操作功能。
  • QAction:用來定義應用程式中的動作,無論是用於菜單、工具欄還是其他地方。

上一篇
Day 4: PySide6 訊號與槽 (Signals & Slots)
下一篇
Day 6: PySide6 QFileDialog 文件對話框
系列文
pythonGUI學習筆記30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言